Continuing my expolartion of Notification of Infectious Disease data
https://journocode.com/2016/01/28/your-first-choropleth-map/
library("rgdal")
LocalAuthorities<-readOGR("https://opendata.arcgis.com/datasets/686603e943f948acaa13fb5d2b0f1275_4.geojson")
OGR data source with driver: GeoJSON
Source: "https://opendata.arcgis.com/datasets/686603e943f948acaa13fb5d2b0f1275_4.geojson", layer: "686603e943f948acaa13fb5d2b0f1275_4"
with 380 features
It has 10 fields
“Statutory notifiable diseases - number of cases reported in week 51 of 2017”
library("reshape2")
library("magrittr")
geo_disease_data<-read.csv("geo_disease_data.csv")
geo_disease_data[is.na(geo_disease_data)] <- 0
geo_disease_data$LocalAuthority<-gsub(" UA", "", geo_disease_data$LocalAuthority)
LA_Diseases<-sp::merge(LocalAuthorities, geo_disease_data, by.x="lad16nm", by.y="LocalAuthority")
library("leaflet")
diseases <- names(geo_disease_data)[-1]
max_cases <- max(melt(geo_disease_data)$value)
Using LocalAuthority as id variables
pal <- colorNumeric(
palette = "viridis",
domain = c(0,max_cases)
)
myleaflet<-leaflet(width = "100%") %>%
addProviderTiles("Esri.WorldGrayCanvas") %>%
addLegend( pal = pal,
values = 0:max_cases,
title = "Cases",
opacity = 1) %>%
addLayersControl(baseGroups=diseases,
position = "bottomleft",
options = layersControlOptions(collapsed = FALSE))
for (active_disease in diseases)
{
myleaflet <- myleaflet %>%
addPolygons(data=LA_Diseases,
fillColor=~pal(LA_Diseases[[active_disease]]),
fillOpacity = 0.8,
color = "black",
weight = 1,
popup = paste(LA_Diseases$lad16nm, LA_Diseases[[active_disease]],"cases"),
group = active_disease
)
}
myleaflet